package org.wxl.domain;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 文件信息实体类
 * @author 王学良
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("file_info")
public class fileInfoEntity implements Serializable {
    /**
     * 文件UUID
     */
    @TableId(value = "uuid")
    @Schema(description = "文件UUID")
    private String uuid;

    /**
     * 原始文件名
     */
    @Schema(description = "原始文件名")
    private String originalFilename;

    /**
     * 文件类型
     */
    @Schema(description = "文件类型")
    private String fileType;

    /**
     * 存储路径
     */
    @Schema(description = "存储路径")
    private String storagePath;

    /**
     * 上传者UUID
     */
    @Schema(description = "上传者UUID")
    private String uploaderUuid;

    /**
     * 文件大小（字节）
     */
    @Schema(description = "文件大小（字节）")
    private Long fileSize;

    /**
     * 上传时间
     */
    @Schema(description = "上传时间")
    private LocalDateTime uploadTime;

    /**
     * 文件状态 (0:审核中，1：正常，3：禁用)
     */
    @Schema(description = "文件状态 (0:审核中，1：正常，3：禁用)")
    private String status;

    /**
     * 访问权限(0:个人可以看到，1：公开)
     */
    @Schema(description = "访问权限(0:个人可以看到，1：公开)")
    private String accessPermission;

    /**
     * 缩略图路径
     */
    @Schema(description = "缩略图路径")
    private String thumbnailPath;

    /**
     * 关联业务类型
     */
    @Schema(description = "关联业务类型")
    private String businessType;
    /**
     * 视频主题
     */
    @Schema(description = "视频主题")
    private String theme;
    /**
     * 视频简介
     */
    @Schema(description = "视频简介")
    private String remark;
    /**
     * 关键词
     */
    @Schema(description = "关键词")
    private String keywords;
}
